package eteam.aps.model.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import eteam.aps.common.entity.ParentEntity;
import io.swagger.annotations.ApiModelProperty;

/**
 * 单据流水号
 *
 * @author WMT
 * @Date 2023-02-14
 */
@TableName("ed_worksheets")
public class Worksheet extends ParentEntity {

    /**
     * 使用日期格式【0：年】
     */
    public static final int FUSEDATE_TYEAR = 0;

    /**
     * 使用日期格式【0：月】
     */
    public static final int FUSEDATE_MONTH = 10;

    /**
     * 使用日期格式【0：日】
     */
    public static final int FUSEDATE_DAY = 20;

    /**
     * 是否自动编码【0：是】
     */
    public static final int FAUTONO_TRUE = 0;

    /**
     * 是否生成冻结码【0：是】
     */
    public static final int FROZONE_TRUE = 0;

    /**
     * 单据类型【9：其他单据】
     */
    public static final int FWORKSHEET_TYPE_OTHER = 9;

    /**
     * 单据类型【1：基本信息】
     */
    public static final int FWORKSHEET_TYPE_BASIC = 1;

    /**
     * 单据类型【2：销售管理】
     */
    public static final int FWORKSHEET_TYPE_SALES = 2;

    /**
     * 单据类型【3：采购管理】
     */
    public static final int FWORKSHEET_TYPE_PURCHAS = 3;

    /**
     * 单据类型【4：库存管理】
     */
    public static final int FWORKSHEET_TYPE_INVENTORY = 4;

    /**
     * 单据类型【5：生产管理】
     */
    public static final int FWORKSHEET_TYPE_PRODUCTION = 5;

    /**
     * 单据类型【6：应收管理】
     */
    public static final int FWORKSHEET_TYPE_ACCOUNTS_RECEIVABLE = 6;

    /**
     * 单据类型【7：应付管理】
     */
    public static final int FWORKSHEET_TYPE_ACCOUNT_PAYABLE = 7;

    /**
     * 单别编号 ，唯一 not null
     */
    @ApiModelProperty(value = "单别编号")
    @TableField("FWorksheetCode")
    private String fWorksheetCode;

    /**
     * 单别名称 not null
     */
    @ApiModelProperty(value = "单别名称")
    @TableField("FWorksheetName")
    private String fWorksheetName;

    /**
     * 系统类别
     */
    @ApiModelProperty(value = "系统类别")
    @TableField("FSystemId")
    private int fSystemId;

    /**
     * 单据类型
     */
    @ApiModelProperty(value = "单据类型")
    @TableField("FWorksheetType")
    private String fWorksheetType;

    /**
     * 单据编号前缀
     */
    @ApiModelProperty(value = "单据编号前缀")
    @TableField("FPrefix")
    private String fPrefix;

    /**
     * 是否自动编码【0：是 1：否】
     */
    @ApiModelProperty(value = "是否自动编码")
    @TableField("FAutoNo")
    private int fAutoNo;

    /**
     * 是否使用日期【0：是 1：否】
     */
    @ApiModelProperty(value = "是否使用日期")
    @TableField("FUseDate")
    private int fUseDate;

    /**
     * 冻结码，自动生成的随机数字
     */
    @ApiModelProperty(value = "冻结码")
    @TableField("FRozone")
    private int fRozone;

    /**
     * 流水号长度
     */
    @ApiModelProperty(value = "流水号长度")
    @TableField("FStreamLength")
    private int fStreamLength;


    public String getfWorksheetCode() {
        return fWorksheetCode;
    }

    public void setfWorksheetCode(String fWorksheetCode) {
        this.fWorksheetCode = fWorksheetCode;
    }

    public String getfWorksheetName() {
        return fWorksheetName;
    }

    public void setfWorksheetName(String fWorksheetName) {
        this.fWorksheetName = fWorksheetName;
    }

    public int getfSystemId() {
        return fSystemId;
    }

    public void setfSystemId(int fSystemId) {
        this.fSystemId = fSystemId;
    }

    public String getfWorksheetType() {
        return fWorksheetType;
    }

    public void setfWorksheetType(String fWorksheetType) {
        this.fWorksheetType = fWorksheetType;
    }

    public String getfPrefix() {
        return fPrefix;
    }

    public void setfPrefix(String fPrefix) {
        this.fPrefix = fPrefix;
    }

    public int getfAutoNo() {
        return fAutoNo;
    }

    public void setfAutoNo(int fAutoNo) {
        this.fAutoNo = fAutoNo;
    }

    public int getfUseDate() {
        return fUseDate;
    }

    public void setfUseDate(int fUseDate) {
        this.fUseDate = fUseDate;
    }

    public int getfRozone() {
        return fRozone;
    }

    public void setfRozone(int fRozone) {
        this.fRozone = fRozone;
    }

    public int getfStreamLength() {
        return fStreamLength;
    }

    public void setfStreamLength(int fStreamLength) {
        this.fStreamLength = fStreamLength;
    }
}
